package td1exo;
import listElement.*;

/**
 *
 * @author Boukry Omar
 */
public class ListFactory<E> {

    /**
     * @return une implementation de liste simplement chaînée.
     */
    static <E> List<E> createLinkedList(){
        return new LinkedList();
    }

    /**
     * @return une implementation de liste simplement chaînée circulaire.
     */
    static <E> List<E> createCircularLinkedList(){
        return new CircularLinkedList();
    }

    /**
     * @return une implementation de liste doublement chaînée.
     */
    static <E> List<E> createDoubleLinkedList(){
        return new DoubleLinkedList();
    }

    /**
     * @return une implementation de liste doublement chaînée circulaire.
     */
    static <E> List<E> createCircularDoubleLinkedList(){
        return new CircularDoubleLinkedList();
    }
}
